Apple Silicon MacはUMAである
https://scrapbox.io/files/6639bf810340230025516686.png
MacでM1, M2, M3などを積んだものは、UMA(Unified Memory Architecture)という共有メモリアーキテクチャーを持つ。
上図を見るとわかる通り、「Fabric」というユニットでCPU、GPU、DRAM(メモリ)などが繋がっている。 CPUとGPU、Neural EngineやISPなど、さまざまな専用プロセッサが同じメモリにアクセスすることができる。 つまり、これらを並列に動作させることで、複数のメモリ間でデータを転送するオーバーヘッドがなくなるため、高速な処理になる。
CPU同士が共有メモリにアクセスできたり
https://scrapbox.io/files/6639c0648877f60023efa31f.png
Local LLMを動かすときにCPUとGPUの間で自由なメモリ割り当てができるようになる。